package com.example.demo.thread;

/**
 * 继承Thread类的方法尽管被我列为一种多线程实现方式，但Thread本质上也是实现了Runnable接口的一个实例，它代表一个线程的实例，
 * 并且，启动线程的唯一方法就是通过Thread类的start()实例方法。start()方法是一个native方法，它将启动一个新线程，并执行run()方法。
 * 这种方式实现多线程很简单，通过自己的类直接extend Thread，并复写run()方法，就可以启动新线程并执行自己定义的run()方法
 *
 * @author luowj12
 * @since 2021/4/26 15:46
 */
public class ThreadTest extends  Thread{
    private int ticket =10;
    @Override
    public void run() {
        for(int i=0;i<20;i++){
            if(this .ticket >0){
                System. out.println(Thread.currentThread().getName()+ " 卖票：ticket" +this.ticket--);
            }
        }
    }

    public static void main(String[] args) {
        ThreadTest myThread1 = new ThreadTest();
        ThreadTest myThread2 = new ThreadTest();
        myThread1.start();
        myThread2.start();
    }
}
